home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 23.zip / BS1 part 23 / C-light d1.adf / Documentation.txt < prev    next >
Text File  |  1988-10-15  |  22KB  |  378 lines

  1.                   Creating Animations with C-Light
  2.  
  3.                       0) Introduction
  4.                       1) Design and Generation.
  5.                       2) Creating an ANIM file.
  6.                       3) Playback of animation.
  7.                       4) An example.
  8.                       5) A tutorial on using ED.
  9.  
  10. 0) Introduction
  11.  
  12.      There are two disks included as part of C-Light.  The disk labeled 
  13. C-Light contains the scene editor, ray-tracer and View and Video tools.  
  14. The second disk, labeled Animate contains the animation creation tools 
  15. MakeAnim and PlayAnim as well as some demonstrations and examples.  Be 
  16. sure to create backup copies of the disks before proceeding.  It is 
  17. recommended that you read the C-Light manual before reading this document.  
  18.      To view the demonstration movies on the Animate disk, open the Movies 
  19. drawer and double click on the icon of the movie you wish to view.  The 
  20. screen will turn black while the movie is being loaded into memory, then 
  21. the first frame will appear.  To start the movie, click once with the left 
  22. mouse button.  To stop the movie, click again with the left mouse button.
  23.      This document is an addendum to the C-Light manual, serving to explain 
  24. the use of the MakeAnim and PlayAnim tools for creating your own animated 
  25. movies.  (The terms movie and animation will be used interchangably in the 
  26. following text as will the terms picture and frame.)  Animations can be 
  27. created in any mode (low-res, non-interlaced, interlaced, overscanned.)
  28. IFF pictures created with other programs can be included in an animation also.
  29. Note that you can NOT mix modes within an animation.  If the first frame is
  30. low-res and non-interlaced then the rest of the frames must be low-res and
  31. interlaced.  Interlaced animations will have a tendency to be slower because
  32. more of the screen has to be changed.  Also, having two floppy disk drives is
  33. almost essential (although a RAM disk can probably be used in place of a 
  34. second floppy drive.)
  35.  
  36. 1) Design and Generation
  37.  
  38.      The first step in creating an animation is to dream up some idea that 
  39. you would like to see animated.  This is probably the part of any task that 
  40. is the most fun.  Once you have the idea you then have to figure out how to 
  41. make it happen with the tools and resources you have available.
  42.      Producing animations with C-Light involves breaking the motion in the 
  43. movie you are going to create into individual frames that are slightly 
  44. seperated in time; just like the frames of film in a reel of movie film.  
  45. Each frame is slightly different from the previous one so that when shown 
  46. rapidly in sequence, the eye is tricked into seeing smooth motion on the 
  47. screen.  Probably the best way to create this sequence of images with 
  48. C-Light is a technique known as key-framing.  Key-framing allows you to 
  49. control motion by picking out the most important moments (or key frames) 
  50. in the movie and using these to determine the locations of all the objects 
  51. for all the frames inbetween.  Thus, for example, to create a movie of a 
  52. sphere and cube melting together, you might pick a scene where the cube and 
  53. sphere are seperate as one key frame and one where they are melted together 
  54. as another key frame.  Then, since these two key frames tell you the starting 
  55. and ending locations for the cube and sphere, you can figure out (using some 
  56. simple math) where the cube and sphere are located for all the frames 
  57. inbetween the two key frames.  For example, if the sphere starts at 
  58. x = -100, y = 0, and z = 0 and stops at x = 0, y = 0, z = 0 and there 
  59. are 8 frames inbetween the key frames (for a total of ten frames in the 
  60. movie) then the positions for the sphere in each frame are:
  61.  
  62.      Frame       X Position  Y Position  Z position
  63.        1            -100          0           0
  64.        2             -89          0           0
  65.        3             -78          0           0
  66.        4             -67          0           0
  67.        5             -56          0           0
  68.        6             -45          0           0
  69.        7             -34          0           0
  70.        8             -23          0           0
  71.        9             -12          0           0
  72.       10               0          0           0
  73.  
  74.      In order to figure out how much the position changes for each frame, 
  75. just divide the total change in position between key frames by the total 
  76. number of frames minus one.  Thus the x position for the sphere is:
  77.  
  78.          Position change =  +100
  79.          -----------------------   =  11 (its ok to round it off)
  80.          10 frames total - 1 = 9
  81.  
  82. So starting at x = -100 the sphere moves 11 units to the right for each frame.
  83.      The MakeAnim tool that will be used to combine the pictures into a 
  84. single movie will automatically make the movie looped.  This means that 
  85. when the movie reachs the last frame it will go back to the beginning and 
  86. start again.  Thus if you want to make a movie that repeats the same motion 
  87. over and over (like a spinning Enterprise) you have to make sure the last 
  88. frame and first frame flow together smoothly.  This just means that you have 
  89. to have the same amount of motion between the first and last frames as between 
  90. any of the inbetween frames.  (For example, in the Enterprise animation, the 
  91. ship rotates 1/16 turn each frame and when the movie reaches the last frame, 
  92. another 1/16 turn will make it the same as the first frame.  Thus when the 
  93. first frame is played again right after the last frame, the motion looks 
  94. smooth.)  If you run the movie play back tool PlayAnim from CLI you can 
  95. control precisely the number of times a movie will repeat before stopping 
  96. (from 1 to 999,999 times.)
  97.      Now this may sound like a lot of work and it can be if your
  98. picture is very complicated and there is a lot of motion in it.  However, 
  99. for most movies it will take only an hour or two to create the scene 
  100. description files for all the frames once you get the hang of it.
  101.      There are some simple tricks you can use to speed things up too.  
  102. For example, to create the Enterprise animation (included on the Animate 
  103. disk in the Movies drawer) a detailed picture of the Enterprise was first 
  104. created.  Then, instead of figuring out a new position for each part of the 
  105. ship for each frame as the ship rotates, the VIEW function in C-LightII was 
  106. used to rotate the whole ship for each frame.  Thus, once the ship was 
  107. created, it only took a few minutes to create all the scene description files 
  108. for the animation (just change the VIEW rotation, save the picture, change 
  109. the rotation, save, change, save, etc.)  
  110.      Being organised also helps keep things simple when creating an 
  111. animation.  Make up a list showing the position for each object for each 
  112. frame and use it as a checklist when creating the scene description files 
  113. for all the frames with C-LightI.  Be sure to give each file a unique name 
  114. that will make it easy to figure out what order they go in later.  
  115. (Melt1, Melt2, Melt3...)
  116.      Now, once the scene description files for all the frames have been 
  117. created each picture has to be calculated using C-LightII.  This is done in 
  118. exactly the same way as it would be for a single picture so refer to the 
  119. C-Light manual for instructions on calculating a picture.  It's ok
  120. if the pictures fill up more than one disk as will be shown in the next 
  121. section.  You can see that if the scene is complicated (so that it takes a 
  122. long time to calculate a single frame) then it can take a LONG time to 
  123. calculate all the frames in a movie.  To give you an idea of how long, the 
  124. Enterprise animation took about one week to calculate, doing two pictures a 
  125. day.  You can speed things up by turning off shadows, using less lights and 
  126. using fewer objects.  The reason it is so slow is because of the 
  127. incredible number of calculations that must be done.  Each dot on the 
  128. screen (pixel) requires about 100 calculations (for say, a picture of 
  129. a room with one light and no shadows).  Thus for a non-interlaced, 
  130. non-overscanned (320 pixels by 200 pixels) movie with 16 frames this means:
  131.  
  132.        100 * 320 * 200 * 16 = 100,024,000 calculations!
  133.  
  134. Even an Amiga takes a little while to accomplish a task of this complexity!  
  135. Movies also take up a lot of disk and RAM space.  An Amiga with 512K of RAM 
  136. can playback a movie no larger than about 210K.  Larger movies can be played 
  137. if you have more than 512K RAM.  The largest movie that can be created by 
  138. MakeAnim without a hard disk drive is the size of one floppy disk (880K).  
  139.      For the advanced user, an example program called Spheres.c is
  140. included to show how to create scene description files from a program.
  141. In this way you can animate hundreds of objects without having to
  142. shift them individually for each frame.  By studying this program you
  143. can also learn the format of the scene description files written by 3)C-LightI
  144. and read in by 3)C-LightII.  These files are standard ASCII text files and
  145. can be read and modified using any text editor.
  146.  
  147. 2) Creating an ANIM file
  148.  
  149.      Once you have created all the individual frames for a movie, they have 
  150. to be put together in the proper order and saved in a single file.  Also, 
  151. in order to fit as many as possible in the memory of your Amiga, the 
  152. pictures have to be compressed into a more compact format.  The ANIM 
  153. format was devised to give us a standard way to compress movies into 
  154. a common format.  It achieves the compression of a sequence of pictures 
  155. into a smaller space by storing only the differences between each frame 
  156. instead of the entire picture.  The MakeAnim utility has been included as 
  157. a part of C-Light to automatically compress a sequence of pictures and 
  158. create an ANIM file from them.
  159.      To use MakeAnim there are two simple preparations you have to make.  
  160. First, you need a blank disk that has been given the name TMP.  (See 
  161. the "Introduction to Amiga" manual for instructions on formating a blank 
  162. disk and relabeling it or see the example in section 4.)  This disk will 
  163. be used as a temporary work space by MakeAnim.  [To use MakeAnim with a 
  164. hard disk drive, use the ASSIGN command to make your Amiga think that 
  165. the TMP: disk is a subdirectory of your hard disk.  For example:
  166.  
  167.              ASSIGN TMP: dh0:WorkArea/Movies
  168.  
  169. The ASSIGN command must be issued from a CLI window.  See section 5 below 
  170. for instructions on creating a CLI window.]
  171.      Second, you need to create a list that tells MakeAnim where to find all 
  172. the pictures that make up your movie.  If you have a text editor you can use 
  173. it to create the list (make sure to save the file as text-only so that all 
  174. the text formating characters are not included.)  If you don't have a 
  175. favorite text editor you can use the simple one that came with your Amiga.  
  176. It is called ED and must be run from a CLI window.  If you are not familiar 
  177. with ED or running programs from the CLI, see section 5 below for an easy 
  178. step by step tutorial on using ED.
  179.      This list, which tells MakeAnim where to find all the pictures in your 
  180. movie, is called a script file.  It has the following format:
  181.  
  182. DiskName:Movie_Name
  183. Time  DiskName:Frame_1_Name
  184. Time  DiskName:Frame_2_Name
  185. Time  DiskName:Frame_3_Name
  186. Time  DiskName:Frame_4_Name
  187. Time  DiskName:Frame_5_Name
  188.       etc...
  189.  
  190. The first line tells MakeAnim what the name of the final ANIM file will 
  191. be and where to put it.  The disk name can also include the names of 
  192. drawers (subdirectories) such as:
  193.  
  194.             Movies:Melt_Drawer/Melt1.ilbm
  195.  
  196. The next lines tell where the pictures are, what order they go in, and 
  197. how long each one should stay on the screen.  Again, the disk name can 
  198. include drawers.  The order of the pictures is the same as their order 
  199. in the script file (the first one will be shown first, the second one 
  200. second, etc.)  The time entry is a number that tells how long each 
  201. picture should stay on the screen.  This gives you complete control 
  202. over how fast things change in any part of your movie.  The time is 
  203. in multiples of one sixtyth of a second (1/60 second).  Thus an entry of 
  204. zero means to show the current frame as fast as possible, an entry of one 
  205. means wait 1/60 second before going to the next frame, an entry of 2 means 
  206. wait 2/60 second before going to the next frame, etc.  So if you want the 
  207. movie to run at about the same speed as a movie projector (24 frames/second) 
  208. try a time value of three.  The following is an example of a complete script 
  209. file:
  210.  
  211. Animate:Enterprise
  212. 0 WorkDisk_1:Enterprise/Enterprise1.ilbm
  213. 0 WorkDisk_1:Enterprise/Enterprise2.ilbm
  214. 0 WorkDisk_1:Enterprise/Enterprise3.ilbm
  215. 0 WorkDisk_1:Enterprise/Enterprise4.ilbm
  216. 0 WorkDisk_1:Enterprise/Enterprise5.ilbm
  217. 0  WorkDisk_1:Enterprise/Enterprise6.ilbm
  218. 0 WorkDisk_1:Enterprise/Enterprise7.ilbm
  219. 0 WorkDisk_1:Enterprise/Enterprise8.ilbm
  220. 0 WorkDisk_2:Enterprise9.ilbm
  221. 0 WorkDisk_2:Enterprise10.ilbm
  222. 0 WorkDisk_2:Enterprise11.ilbm
  223. 0 WorkDisk_2:Enterprise12.ilbm
  224. 0 WorkDisk_2:Enterprise13.ilbm
  225. 0 WorkDisk_2:Enterprise14.ilbm
  226. 0 WorkDisk_2:Enterprise15.ilbm
  227. 60 WorkDisk_2:Enterprise16.ilbm
  228.  
  229. Note that the pictures are located on two different disks in this 
  230. example (WorkDisk_1: amd WorkDisk_2:).  Also, on WorkDisk_1: the pictures 
  231. are in a subdirectory (drawer) while on WorkDisk_2: they are in the main 
  232. level directory.  It is a good idea to have the final ANIM file reside on 
  233. a different disk from those containing the pictures so that you don't run 
  234. out of space.  The time values are all set to zero so that the movie will 
  235. run as fast as possible except for the last one which is set to 60.  This 
  236. means that the movie will pause for one second on the last frame before 
  237. going back to the first frame.  (There can be as many spaces as you like 
  238. between time and picture name, but there must be at least one!)  All 
  239. these variations show the flexibility that is allowed in creating a script 
  240. file.
  241.      Once you have created the script file, run MakeAnim.  If you run it 
  242. from Workbench it will ask you for the name of the script file (a disk name 
  243. and/or drawer name can be included too.)  [If you want to run from CLI, just 
  244. run MakeAnim and it will give you instructions.]  Once MakeAnim has the 
  245. script file name, the rest of the process is automatic.  A window will 
  246. open that will tell what is currently going on in the process of compressing 
  247. and storing the pictures.  At various points in the process you will be asked 
  248. to insert different disks so that MakeAnim can access them (first it will 
  249. look at all the pictures and write out some temporary files to the TMP disk, 
  250. then it will take one picture and all the TMP files and create the final ANIM 
  251. file on the output disk.)  This process really requires two disk drives.  
  252. It is possible to do it with only one, but you'll wear your arm out swapping 
  253. disks.  If you have a RAM expansion the RAM disk can be used as a second 
  254. drive.  Just copy all the pictures to the RAM disk and use RAM: for the 
  255. disk name in the script file.  Alternatively, you can use the ASSIGN 
  256. command to make your Amiga think the RAM disk is the TMP disk.  Just 
  257. issue the command:
  258.  
  259.                  ASSIGN TMP: RAM:
  260.  
  261. from a CLI window.  See section 5 below for instructions on opening a 
  262. CLI window.
  263.      Even with two disk drives you should be intelligent about which drive 
  264. you put a disk into.  Try to place disks in a drive such that you never have 
  265. two disks being accessed from the same drive.  For example, MakeAnim first 
  266. asks for a picture disk, then asks for the TMP disk.  Don't put the TMP 
  267. disk in the same drive as the picture disk or you will have to constantly 
  268. swap them.  Instead, place it in the second drive and everything will 
  269. procede smoothly.  Similarly, don't put the TMP and the final output disk 
  270. in the same drive.  You can stop the process at any time by typing 
  271. Control-C (hold down the CTRL key and the C key at the same time.)
  272.      The process is relatively quick; it usually takes only five to 
  273. twenty minutes to create the final ANIM file depending on the length 
  274. of the movie and the amount of motion that occurs within it.
  275.  
  276. 3) Playback of Animation
  277.  
  278.      The PlayAnim tool is used to show your movie after the ANIM file has 
  279. been created. There are two different ways to play it back from Workbench.  
  280. [To playback from CLI, just run PlayAnim and it will give you instructions.]  
  281. In the first method you simply double click on the icon for the animation 
  282. you have created.  This requires that a copy of PlayAnim is in the main 
  283. window for the disk that contains the ANIM file (or you can change the 
  284. tool type for the movie to point to the disk that has PlayAnim on it.)  
  285. To use the second method, just double click on the PlayAnim icon.  A 
  286. requestor will ask you for the location/name of the ANIM file you wish 
  287. to view.
  288.      Once the ANIM file has been read in by PlayAnim, the first frame of 
  289. the movie will appear.  To start it playing, just click in the screen once 
  290. with the left mouse button.  When you want the movie to stop, click again 
  291. with the left mouse button.  This method is designed to give you the most 
  292. precise control of start and stop times when patching together several 
  293. movies into a longer movie on your video tape recorder.
  294.      More precise control of the number of times the movie repeats is 
  295. possible by running PlayAnim from CLI.  Also, you may notice that the 
  296. movie flickers a little when shown on your Amiga monitor.  This is because 
  297. interlace is automatically turned on by PlayAnim in order to get the best 
  298. quality when recording on a video tape recorder.  The interlace feature 
  299. can optionally be turned off when PlayAnim is run from CLI.  (Run 
  300. PlayAnim from CLI to get instructions on how to set these options.)
  301.  
  302. 4) An Example
  303.  
  304.      This section describes how to create a movie using some example 
  305. pictures included on the Animate disk.  For demonstration purposes a 
  306. set of pictures, showing a ball spinning around a rotating cube, has 
  307. been included in the Pictures drawer on the Animate disk.  A script file 
  308. and the C-LightI scene description files have also been included in this 
  309. drawer.  Make sure your copy of the Animate disk is labeled Animate; use 
  310. the Rename item in the Workbench menu to rename it if it is not.
  311.      First create a TMP disk by putting a blank disk in your Amiga, select 
  312. the disk icon that appears and then select Initialize from Workbench's Disk 
  313. menu.  Then select Rename from the Workbench menu and change the disk name 
  314. from blank to TMP.
  315.      Now, to turn the pictures into an animated movie, double click on the 
  316. MakeAnim icon.  A requestor will appear asking for the name of the script 
  317. file.  Enter the name:
  318.  
  319.              Animate:Pictures/b.script
  320.  
  321. which gives the name and location of the script file.  You can use an 
  322. editor to look at this script file as a working example (see section 5 
  323. if you don't know how to use a text editor.)  The script file contains 
  324. the locations/names of all the pictures that will be used to make the 
  325. movie and tells MakeAnim to put the completed movie in the main window 
  326. (top level directory) of the Animate disk and to call it Ball&Cube.
  327.      After you have typed in the name, hit return and a small text window 
  328. will appear.  This window will keep you informed on the progress of the 
  329. movie you are creating.  After reading in the names of the picture files, 
  330. MakeAnim will ask for the TMP disk to be inserted.  Because there is a lot 
  331. of blank screen in this movie and not much motion, both the pictures and 
  332. the final movie will fit on the Animate disk with room to spare.  First 
  333. the pictures will be read in one at a time and compressed and stored a
  334. s DLTA files on the TMP disk.  Then the first picture and all the DLTA 
  335. files will be combined into an ANIM file and stored on the Animate disk.
  336.      When the process is complete, close the window for the Animate disk 
  337. and then reopen it.  There should now be an icon there that looks like a 
  338. reel of movie film.  Double click on that icon to play back the movie you 
  339. just created.  (See section 3 above for complete instructions on play back 
  340. of movies.)  That's all there is to it!
  341.  
  342. 5) A Tutorial on using ED
  343.  
  344.      ED is a simple text editor that is included on your Workbench disk.  
  345. It is only callable from a CLI window (Command Line Interface window.)  
  346. The following steps can be used to create or examine a script file using ED:
  347.  
  348.    1) To get a CLI window call up Preferences and select CLI ON (see the 
  349. "Introduction to Amiga" manual for information on using Preferences.)  
  350. Exit Preferences by selecting SAVE, then close the Workbench window and 
  351. reopen it.  Open the drawer labeled SYSTEM.  A new icon will appear there 
  352. from now on called CLI.  Open a CLI window by double clicking on this icon.
  353.  
  354.    2) Click once in the CLI window to activate it, then type:
  355.  
  356.                     CD disk:drawer
  357.  
  358. where "disk" is the name of the disk you want to put the script file on 
  359. and "drawer" is the name of the drawer you would like it to be in (leave 
  360. out the drawer name if you want the script file to be in the top level 
  361. directory of the disk.)  Now type:
  362.  
  363.                     ED filename
  364.  
  365. (where "filename" is the name of your script file) and then hit RETURN.
  366.  
  367.    3) You are now in the ED editor and can type in the disk names, drawer 
  368. names, picture names and times for the script file.  You can use the cursor 
  369. keys (with the arrows on them) to move around while typing and can use the 
  370. BACKSPACE and DEL keys to erase mistakes.  Holding down CTRL and B at the 
  371. same time will delete a whole line.  When you are done you can save your 
  372. work to disk by hitting the ESC key, then the X key, then RETURN.
  373.  
  374.    4) You are now back in the CLI window.  If you want to close the 
  375. CLI window, type ENDCLI.  If you run into trouble at any time and want 
  376. to get out of ED, just type ESC, then X, then RETURN.  See the "AmigaDOS 
  377. Users Manual" if you would like more information on using ED.
  378.